package exception;

import java.io.FileOutputStream;
import java.io.IOException;

/*
 * 自动关闭特性
 * */
public class AutocloseableDemo {
    public static void main(String[] args) {
        /*
         * try结束后提供的自动关闭流工程
         *
         * 注意
         * 自动关闭特定是编译器认可的，代码最终还是会被编程器改成FinallyDemo2中的样子
         * */
        try (
                //在try的（）中定义并初始化需要在finally中调用close方法的对象
                //只有在之后在finally中需要调用close方法的对象才能放在try(当中)
                FileOutputStream fos = new FileOutputStream("fos.dat");
        ) {
            fos.write(1);
        } catch (IOException e) {
            e.printStackTrace();
        }

        //当我们将需要close的对象创建放在try(当中)我们就不用自己去写法finally块然后再finally块中去close了
    }
}
